In Rust, enumerazioni (enum) sono molto di più di semplici elenchi; sono i progetti architettonici delle possibilità. A differenza di interi raggruppati in modo generico, un enum è un tipo somma, il che significa che una variabile può rappresentare esattamente uno tra diversi varianti.
1. Spazi dei nomi e ambito
Le varianti sono organizzate sotto l'identificatore dell'enum utilizzando l'operatore doppio punto (::) operatore. Questo spazio dei nomi impedisce conflitti tra diversi Moduli, Crate, o Pacchetti, consentendo di definire una V4 variante in contesti multipli senza ambiguità.
2. Sicurezza dei tipi
Utilizzando gli enum come argomenti delle funzioni, i pattern della libreria standard garantiscono che solo stati validi entrino nella tua logica. Ciò sposta gli errori potenziali da runtime al momento della compilazione, garantendo che la tua funzione route non debba mai gestire un indirizzo "v5" che non esiste.